package analizadorLexico.estados;

public class Estado04 implements Estado{
/*aplico el patron singleton para cada estado*/
	
	/*INSTANCE lo que hace es guardar la instancia de la clase*/
	private static Estado04 INSTANCE = null;    
	private Estado04(){}
	
    private synchronized static void createInstance() {
        if (INSTANCE == null) INSTANCE = new Estado04();
    }
    
    public static Estado getInstance() {
        if (INSTANCE == null) createInstance();
        return INSTANCE;
    }

	public void irASiguienteEstado() {
		
		char c=Contexto.getSiguienteCaracterYAvanzar();
		
		if(c=='n')
		{
			Contexto.setEstadoActual(Estado15.getInstance());
			Contexto.appendAlLexema(c);
			return;
		}
		
		if(c=='e')
		{
			Contexto.setEstadoActual(Estado18.getInstance());
			Contexto.appendAlLexema(c);
			return;
		}
		
		if(c=='c')
		{
			Contexto.setEstadoActual(Estado23.getInstance());
			Contexto.appendAlLexema(c);
			return;
		}
		
		if(c=='r')
		{
			Contexto.setEstadoActual(Estado35.getInstance());
			Contexto.appendAlLexema(c);
			return;
		}
		
		Contexto.setEstadoActual(Estado06.getInstance());
		
	}
}
